Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.11.2020, 15:30
Новичок на форуме
Отправить личное сообщение для Avesha Посмотреть профиль Найти все сообщения от Avesha
 
Регистрация: 24.11.2011
Сообщений: 1

Как добавить в файл php данные для прикрепленного файла
Добрый день!

Заранее прошу прощения за мой вопрос, возможно он очень даже нубский. Но самостоятельно никак мозгов не хватает его решить.

Вопрос вот в чем: у меня на сайте есть форма следующего содержания:

<form id="progress_form" enctype="multipart/form-data" method="post">
                  <div class="form-row pr_av_m">
                    <div class="form-group col-md-4">
                    <div class="castom-input_1">
                      <input type="text" class="form-control" name="pr_input_otkuda" id="pr_input_otkuda" placeholder="Откуда">
                    </div>
                    </div>
                    <div class="form-group col-md-4">
                    <div class="castom-input_2">
                        <input type="text" class="form-control" name="pr_input_kuda" id="pr_input_kuda" placeholder="Куда">
                    </div></div>
                    <div class="form-group col-md-4">
                    <div class="castom-input_3">
                        <input type="text" class="form-control" name="pr_input_phone" id="pr_input_phone" placeholder="Ваш телефон">
                    </div></div>
                  </div>
                  <div class="form-row pr_av_m">
                    <div class="form-group col-md-4">
                        <div class="castom-input_4">
                            <input type="text" class="form-control" name="pr_input_tip_gruza" id="pr_input_tip_gruza" placeholder="Тип груза">
                        </div>
                    </div>
                    <div class="form-group col-md-4">
                        <div class="castom-input_5">
                            <input type="text" class="form-control" name="pr_input_ves" id="pr_input_ves" placeholder="Объем, вес">
                        </div>
                    </div>
                    <div class="form-group col-md-4">
                        <div class="castom-input_6">    
                            <input type="email" class="form-control" name="pr_input_email" id="pr_input_email" placeholder="Ваш email">
                        </div>
                    </div>
                  </div>
                <div class="form-row pr_av_m">
                  <div class="form-group col-md-8">                     
                    <div class="custom-file">
                    <div class="castom-input_7">
                      <input type="file" class="custom-file-input" name="pr_input_file" id="pr_input_file">
                      <label class="custom-file-label" for="pr_input_file" data-browse="Обзор"><img src="<?php echo get_template_directory_uri() ?>/images/ico/pr_file.png">Прикрепить документы</label>
                    </div>  </div>                    
                  </div>   
                  <div class="form-group col-md-4">
                    <div class="pr_button pr_form_but">
                        <button class="btn pr_link" type="submit" id="submitFF">Отправить заявку</button>
                    </div>  
                  </div>
                </div>
                </form>


К ней - следующий js код:
$("#progress_form").on("submit", function (e) {
        e.preventDefault();
        var thisForm = $(this);
        $.ajax({
            type: "POST",
            url: "/wp-content/themes/progress/mail2.php",
            data: thisForm.serialize()
        }).done(function () {
            thisForm.find("input, textarea").each(function (i, e) {
                if ($(e).attr("type") != "submit") $(e).val("");
            });
            // thisForm.siblings(".av_modal_close").click();
            alert("Спасибо за заявку! Скоро мы с вами свяжемся.");
        });
    });


И все это связано с файлом mail2.php
<?
    $recepient = "*тут почта получателя*";  // получатель
    $sitename = "PROGRESS. Форма заказа";
    
    // Тут собираем данные которые нужно отправить
    $put1 = trim($_POST["pr_input_otkuda"]);
    $put2 = trim($_POST["pr_input_kuda"]);
    $tipgruza = trim($_POST["pr_input_tip_gruza"]); 
    $ves = trim($_POST["pr_input_ves"]); 
    $phone = trim($_POST["pr_input_phone"]);    
    $email = trim($_POST["pr_input_email"]);
   //$attachment = trim($_POST["pr_input_file"]);
    
    // Само сообщение
    $message = "ДАННЫЕ ПО ГРУЗУ: <br>Откуда: $put1 <br>Куда: $put2 <br>Тип груза: $tipgruza<br> Вес: $ves<br><br> ДАННЫЕ ЗАКАЗЧИКА: <br> Телефон: $phone <br>Почта: $email <br>Прикреплено: $attachment"."<br><br>Адрес сайта: ".$_SERVER['HTTP_REFERER'];
    
    $pagetitle = "Заявка с сайта \"$sitename\"";
    
    if(mail($recepient, $pagetitle, $message, "Content-type: text/html; charset=\"utf-8\"\n From: $recepient"))
        echo '<div class="d_mes">Спасибо за Ваше обращение.</div>';
    else
        echo '<div class="d_mes">Произошла ошибка. Попробуйте позже.</div>';
?>


Мой вопрос такой: как прописать в php файле возможность показать на почте у получателя ПРИКРЕПЛЕННЫЙ файл. И при этом не очень "поломать" код самой формы... Ну не могу понять и все тут. Сложно это для меня((

Пожалуйста, помогите!

Заранее благодарна за любую помощь - даже за пинок в нужном направлении!

P.s. Да, чуть не забыла - все работает очень четенько, на почту приходит письмо, со всем полями. В общем сама форма функционирует отлично

Последний раз редактировалось Avesha, 27.11.2020 в 15:33.
Ответить с цитированием
  #2 (permalink)  
Старый 27.11.2020, 15:36
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Avesha
как прописать в php файле возможность показать на почте у получателя ПРИКРЕПЛЕННЫЙ файл
Файлы отправляемые в РНР помещаются не в $_POST, а в $_FILES. Для того, чтобы прикрепить файл к почте, а тем более отобразить его в почте (если изображение), оформление почтовое должно быть гораздо серьезнее, к слову ваше оформление почты никуда не годится. Используйте готовую библиотеку phpmailer, а свой код выбросить.

PS. Ваш JS код не передаст на сервер файла.

Последний раз редактировалось laimas, 04.12.2020 в 22:10.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как добавить в DIV содержимое другого HTML файла? wooo Элементы интерфейса 5 31.05.2017 08:58
Как передать данные из одинаковых форм php скрипту через AJAX? griga999 AJAX и COMET 22 10.10.2016 06:09
Как с помощью одного файла заменять данные во всех сайтах Дима1892 Ваши сайты и скрипты 2 11.01.2016 19:22
Как добавить данные в глобальный массив из функции Jigan2 jQuery 2 14.03.2015 18:06
поиск классов внутри тега yozuul jQuery 24 14.06.2013 22:00